﻿
namespace System.Linq
{
    public class FilterCriteria
    {
        public string FilterName { get; set; }
        public FilterOperation FilterOperation { get; set; }
        public string FilterValue { get; set; }
        public FilterCriteria()
        {
        }
        public FilterCriteria(string name, FilterOperation operation, string value)
        {
            this.FilterName = name;
            this.FilterOperation = operation;
            this.FilterValue = value;
        }
        public override bool Equals(object obj)
        {
            FilterCriteria that = obj as FilterCriteria;
            if (that == null)
            {
                return false;
            }
            return this.FilterName.Equals(that.FilterName) && this.FilterOperation.Equals(that.FilterOperation);
        }
        public override int GetHashCode()
        {
            return this.FilterName.GetHashCode() ^ this.FilterOperation.GetHashCode();
        }
    }
}
